#ifndef __CK_FILE_DATA_SOURCE_H__
#define __CK_FILE_DATA_SOURCE_H__

#include "ckDataSource.h"
#include "ckDataProduct.h"
#include <string>

namespace ck
{
	namespace data
	{
		class Dataset;
	}

	class ZCORE_API FileDataSource : public DataSource
	{
	public:
		FileDataSource();
		virtual ~FileDataSource();

	public:
		virtual RESULTCODE	Open();
		virtual RESULTCODE	Find(DatasetProcessor* pProcessor, DatasetFilter* pFilter);
		virtual RESULTCODE	Close();

		virtual	data::Dataset*		GetDataset(ckDataProductType type);
		virtual	data::EnumDataset*	GetDatasets(ckDataProductType type);

	//public:
	//	void		SetPath(const char* szPath);

	//protected:
	//	std::string m_strPath;
	};
}

#endif //__CK_FILE_DATA_SOURCE_H__
